package com.lzy.cloud.payment.request;

import com.lzy.cloud.payment.dtos.pay.PayOrderDTO;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;

@Data
public class PayRequest  implements Serializable {
    private static final long serialVersionUID = 967892219634522999L;

    //--------------------请求数据------------------------------
        /**
         * 订单号
         */
        private String orderId;

        /**
         * 支付方式：0支付宝 1微信    ---预付订单
         */
        private Integer way;

        /**
         * 请求类型    1:预付订单     2:支付状态    3:退款     4:充值
         */
        private Integer requestType;

        /**
         * 退款原因
         */
        private String refundReason;

        /**
         * 用户id
         */
        private String userId;

        /**
         * 金额 (订单总额)--微信/支付宝接收参数类型为String
         */
        private String amount;

        /**
         * 退款金额--微信/支付宝接收参数类型为String
         */
        private String refundAmount;

        //----------------------封装数据----------------------------
        /**
         * 微信退款ID
         */
        private String refundId;

        /**
         * 退款状态 (0:等待退款 1:退款成功 2:退款处理中 3:退款异常 4:未确定 5:退款关闭 )
         */
        private Integer status;

        /**
         * 业务类型
         */
        private Integer type;

        /**
         * 本地退款ID
         */
        private Long id;

        /**
         * 本地退款单号
         */
        private Long refundNumber;

        /**
         * 订单信息
         */
        private PayOrderDTO payOrderDto;

        /**
         * 目标类型(0:APP支付 1:WEB支付(小程序支付))
         */
        private Integer targetType;

        private String skuName;

        /**
         * 龙珠数量
         */
        private Integer integration;

        /**
         * 余额支付
         */
        private BigDecimal balancePaid;

        /**
         * 实付金额
         */
        private BigDecimal payAmount;

}
